import socket
from socket import socket as Socket

# udp2 客户端

# 创建一个UDP的socket对象
client_socket = Socket(socket.AF_INET, socket.SOCK_DGRAM)

# 客户端的socket 是不需要bind。由操作系统分配一个随机的端口号

while True:
    # 发送消息给服务端
    send_msg = input('客户端>> ')
    if send_msg == 'quit':  # 如果客户端输入 quit 表示退出聊天
        # 将quit发送给服务器，客户端退出循环
        client_socket.sendto(send_msg.encode('utf8'), ('192.168.115.148', 6666))
        break
    # sendto 必须要指定目标地址和端口号
    client_socket.sendto(send_msg.encode('utf8'), ('192.168.115.148', 6666))

    # 接收服务器发送过来的数据
    msg, addr = client_socket.recvfrom(1024)
    print(f'来自服务端IP：{addr[0]},端口号：{addr[1]} 的消息：{msg.decode("utf-8")}')

# 最后关闭socket
client_socket.close()
